home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1984 May / 1984-05.d64 / fast add_vic (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  3KB  |  59 lines

  1. 1 dima%(2),b%(2),c%(3),r%(3),p%(5),n%(12,3,3):t%=22:v=36878:s1=36876:i=rnd(-ti)
  2. 5 s%=4*(peek(36866)and128)+64*(peek(36869)and112):cs=37888+4*(peek(36866)and128)
  3. 10 print"[147]"tab(74)"fastadd":printtab(68)"1, 2, or 3 digits?":gosub400
  4. 15 geta$:ifa$=""ora$<"1"ora$>"3"then15
  5. 20 l%=val(a$):q%=9+l%*2
  6. 25 pb%=0:pr%=0:pa%=0
  7. 30 gosub100:w%=0:fori=0tog%:w%=w%+c%(i)*10^i:next:gosub200:gosub300:fori=1to1000:next
  8. 35 ifu%=w%thenpr%=pr%+1:goto55
  9. 40 poke36879,8:print"[147]"tab(138);"w r o n g":printtab(49)"the correct"
  10. 45 printtab(50)"answer is":fori=1to2000:next:gosub200
  11. 50 y%=14:form=0tog%:x%=q%-m*4:z%=c%(m):gosub500:next:fori=1to1000:next:xt%=30:goto65
  12. 55 pokev,15:fori=0to5:pokes1,p%(i):forj=1to50:nextj:ifi=3thenforj=1to75:nextj
  13. 60 nexti:fori=1to50:nexti:pokev,o
  14. 65 pb%=pb%+30-xt%:pa%=pa%+1:ifpa%<10then30
  15. 70 pr%=pr%*10:s$=str$(pr%):x1%=3-len(s$)*2:print"[147][144]":y%=3:h%=0
  16. 75 form=2tolen(s$):x%=x1%+m*4:z%=val(mid$(s$,m,1)):gosub500:next:pb%=pb%*l%
  17. 80 x%=x%+4:z%=12:gosub500
  18. 85 printtab(204)"timed score":s$=str$(pb%):x1%=5-len(s$)*2:y%=12:h%=2
  19. 90 form=2tolen(s$):x%=x1%+m*4:z%=val(mid$(s$,m,1)):gosub500:next
  20. 92 printtab(182)"hit any key"
  21. 94 geta$:ifa$=""then94
  22. 96 goto25
  23. 100 fori=0to2:a%(i)=0:b%(i)=0:c%(i)=0:r%(i)=0:next:r%(3)=0:c%(3)=0
  24. 110 fori=0tol%-1:a%(i)=int(10*rnd(1)):ifa%(i)<>0thene%=i
  25. 120 b%(i)=int(10*rnd(1)):ifb%(i)<>0thenf%=i
  26. 130 w%=a%(i)+b%(i)+r%(i):ifw%<10thenc%(i)=w%:g%=i:next:return
  27. 140 c%(i)=w%-10:r%(i+1)=1:next:c%(i)=1:g%=i:return
  28. 200 poke36879,24:print"[147]":h%=0:y%=2:form=0toe%:x%=q%-m*4:z%=a%(m):gosub500:next
  29. 210 poke198,0:y%=7:form=0tof%:x%=q%-m*4:z%=b%(m):gosub500:next
  30. 220 x%=q%-(f%+1)*4:z%=10:gosub500:pokev,15:form=282-q%to269+q%
  31. 230 pokes%+m,160:pokecs+m,h%:pokes1,m-30:next:pokev,0
  32. 240 h%=6:y%=14:z%=11:form=0tog%:x%=q%-m*4:gosub500:next:return
  33. 300 u%=0:h%=2:y%=14:ti$="000000"
  34. 310 print""tab(220)tab(220)"problem  time   right":printtab(2);pa%+1;tab(17);pr%
  35. 320 form=0tog%
  36. 330 xt%=ti/60:ifxt%>30then return
  37. 340 pokes%+472,asc(mid$(ti$,5,1))+128:pokecs+472,0
  38. 350 pokes%+473,asc(mid$(ti$,6,1))+128:pokecs+473,0
  39. 360 geta$:ifa$=""ora$<"0"ora$>"9"then330
  40. 370 x%=q%-m*4:z%=val(a$):gosub500:u%=u%+z%*10^m:next:return
  41. 400 fori=0to12:forj=0to3:fork=0to3:readn%(i,j,k):nextk,j,i
  42. 410 fori=0to5:readp%(i):nexti:return
  43. 500 pokev,15:fori=0to3:forj=0to3:k=t%*y%+x%+t%*j+i:pokes%+k,n%(z%,j,i):pokecs+k,h%
  44. 510 pokes1,255-x%*j-y%*i:nextj,i:pokev,0:pokes1,0:return
  45. 1100 data108,226,226,123,225,32,32,97,225,32,32,97,32,226,226,32
  46. 1101 data32,108,97,32,32,126,97,32,32,32,97,32,32,226,226,126
  47. 1102 data108,226,226,123,32,32,98,126,108,226,32,32,124,226,226,126
  48. 1103 data108,226,226,123,32,108,98,126,108,32,32,97,32,226,226,32
  49. 1104 data32,32,254,32,32,255,225,32,124,226,251,126,32,32,124,32
  50. 1105 data225,226,226,126,124,226,127,32,108,32,108,126,32,226,126,32
  51. 1106 data32,255,226,32,225,98,98,32,225,32,32,97,32,226,226,32
  52. 1107 data225,226,226,97,32,32,255,32,32,255,32,32,32,126,32,32
  53. 1108 data108,226,226,123,124,98,98,126,225,32,32,97,32,226,226,32
  54. 1109 data108,226,226,123,124,98,98,97,32,32,108,126,32,226,126,32
  55. 1110 data32,32,123,32,32,98,252,123,32,32,97,32,32,32,32,32
  56. 1111 data160,160,160,97,160,160,160,97,160,160,160,97,160,160,160,97
  57. 1112 data108,123,32,123,124,126,255,32,32,255,108,123,124,32,124,126
  58. 1113 data215,225,231,235,231,235
  59.